/* /Components/Layout/MainLayout.razor.rz.scp.css */
.navbar-toggler[b-lale6nghgs] {
    position: fixed;
    opacity: 0;
    pointer-events: none;
}

/* Barra de encabezado superior */
.top-header[b-lale6nghgs] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    z-index: 1002;
}

.menu-button[b-lale6nghgs] {
    cursor: pointer;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 4px;
    width: 3rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    position: absolute;
    left: 1rem;
}

.menu-button:hover[b-lale6nghgs] {
    background-color: rgba(255, 255, 255, 0.3);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

.menu-icon[b-lale6nghgs] {
    width: 1.75rem;
    height: 1.75rem;
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.95%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem;
}

.header-brand[b-lale6nghgs] {
    display: flex;
    align-items: center;
    color: white;
    margin-left: 3.5rem; /* Espacio para el bot�n hamburguesa */
}

.header-logo[b-lale6nghgs] {
    height: 40px;
    width: auto;
    margin-right: 12px;
    object-fit: contain;
    background-color: white;
    padding: 4px 8px;
    border-radius: 4px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.header-title[b-lale6nghgs] {
    font-size: 1.25rem;
    font-weight: 600;
    color: white;
    letter-spacing: 0.5px;
}

.page[b-lale6nghgs] {
    position: relative;
    display: flex;
    flex-direction: column;
    padding-top: 60px; /* Espacio para el header fijo */
}

main[b-lale6nghgs] {
    flex: 1;
}

.sidebar[b-lale6nghgs] {
    background-image: linear-gradient(180deg, #dc3545 0%, #c82333 70%);
    width: 280px;
    height: 100dvh;
    position: fixed;
    top: 0;
    left: -280px;
    z-index: 1001;
    transition: left 0.3s ease, width 0.3s ease;
    overflow-y: auto;
    overflow-x: hidden;
    box-shadow: none;
}

/* Ampliar men� 20% en pantallas grandes (desktop) */
@media (min-width: 1200px) {
    .sidebar[b-lale6nghgs] {
        width: 336px; /* 280px * 1.20 = 336px */
        left: -336px;
    }
    
    #sidebar-toggle:checked ~ .page .sidebar[b-lale6nghgs] {
        left: 0;
    }
}

.sidebar-backdrop[b-lale6nghgs] {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 999;
    cursor: pointer;
}

#sidebar-toggle:checked ~ .page .sidebar[b-lale6nghgs] {
    left: 0;
    box-shadow: 2px 0 10px rgba(0, 0, 0, 0.5);
}

#sidebar-toggle:checked ~ .page .sidebar-backdrop[b-lale6nghgs] {
    display: block;
}

.top-row[b-lale6nghgs] {
    background-color: #ffffff;
    border-bottom: 1px solid #dee2e6;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-lale6nghgs]  a, .top-row[b-lale6nghgs]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-lale6nghgs]  a:hover, .top-row[b-lale6nghgs]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-lale6nghgs]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-lale6nghgs] {
        justify-content: space-between;
    }

    .top-row[b-lale6nghgs]  a, .top-row[b-lale6nghgs]  .btn-link {
        margin-left: 0;
    }

    /* Ajustes para m�vil */
    .header-brand[b-lale6nghgs] {
        margin-left: 0;
        flex: 1;
        justify-content: center;
        padding-left: 3rem;
        padding-right: 0.5rem;
    }

    .header-logo[b-lale6nghgs] {
        height: 32px;
        margin-right: 8px;
        padding: 2px 6px;
        flex-shrink: 0;
    }

    .header-title[b-lale6nghgs] {
        font-size: 0.85rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .menu-button[b-lale6nghgs] {
        position: absolute;
        left: 0.5rem;
        width: 2.75rem;
        height: 2.25rem;
        z-index: 1003;
    }

    .top-header[b-lale6nghgs] {
        justify-content: center;
        padding: 0 0.5rem;
        height: 55px;
        z-index: 1002;
    }

    /* El sidebar mantiene 280px, NO ocupa toda la pantalla */
    .sidebar[b-lale6nghgs] {
        width: 280px;
        left: -280px;
    }

    #sidebar-toggle:checked ~ .page .sidebar[b-lale6nghgs] {
        left: 0;
    }

    .page[b-lale6nghgs] {
        padding-top: 55px;
    }
}

/* Para tablets y m�viles medianos */
@media (min-width: 641px) and (max-width: 768px) {
    .header-title[b-lale6nghgs] {
        font-size: 1.1rem;
    }

    .header-logo[b-lale6nghgs] {
        height: 36px;
    }
}

/* Para pantallas muy peque�as */
@media (max-width: 380px) {
    .header-logo[b-lale6nghgs] {
        height: 28px;
        margin-right: 6px;
        padding: 2px 4px;
    }

    .header-title[b-lale6nghgs] {
        font-size: 0.75rem;
    }

    .menu-button[b-lale6nghgs] {
        width: 2.5rem;
        height: 2rem;
        left: 0.25rem;
    }

    .menu-icon[b-lale6nghgs] {
        width: 1.5rem;
        height: 1.5rem;
    }

    .top-header[b-lale6nghgs] {
        height: 50px;
        padding: 0 0.25rem;
    }

    .page[b-lale6nghgs] {
        padding-top: 50px;
    }

    /* Sidebar mantiene 280px */
    .sidebar[b-lale6nghgs] {
        width: 280px;
        left: -280px;
    }
}

@media (min-width: 641px) {
    .page[b-lale6nghgs] {
        flex-direction: column;
    }

    .top-row[b-lale6nghgs] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .top-row.auth[b-lale6nghgs]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-lale6nghgs], article[b-lale6nghgs] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-lale6nghgs] {
    background: #ffffff;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-lale6nghgs] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.top-row[b-drd9bderwa] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
    animation: fadeInDown-b-drd9bderwa 0.5s ease;
}

@keyframes fadeInDown-b-drd9bderwa {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.navbar-brand[b-drd9bderwa] {
    font-size: 1.1rem;
    transition: all 0.3s ease;
    display: inline-block;
}

.navbar-brand:hover[b-drd9bderwa] {
    transform: scale(1.05);
    color: #ff6b7a !important;
    text-shadow: 0 0 10px rgba(220, 53, 69, 0.3);
}

.bi[b-drd9bderwa] {
    display: inline-block;
    position: relative;
    margin-right: 0.75rem;
    margin-top: 0.1rem;
    font-size: 1.25rem;
    transition: transform 0.3s ease, color 0.3s ease;
    flex-shrink: 0;
    z-index: 1;
}

.nav-item[b-drd9bderwa] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-drd9bderwa] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-drd9bderwa] {
        padding-bottom: 1rem;
    }

    .nav-item[b-drd9bderwa]  a {
        color: #d7d7d7;
        border-radius: 4px;
        min-height: 3rem;
        display: flex;
        align-items: flex-start;
        line-height: 1.4;
        padding: 0.5rem 1rem;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        position: relative;
        overflow: visible;
        white-space: normal;
        word-wrap: break-word;
    }

    .nav-item[b-drd9bderwa]  a::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 3px;
        background: linear-gradient(to bottom, #dc3545, #ff6b7a);
        transform: scaleY(0);
        transition: transform 0.3s ease;
    }

/* Estilos para submen� */
.has-submenu[b-drd9bderwa] {
    position: relative;
}

.submenu-toggle[b-drd9bderwa] {
    cursor: pointer;
    display: flex;
    align-items: flex-start;
    padding: 0.5rem 1rem;
    color: #d7d7d7;
    border-radius: 4px;
    min-height: 3rem;
    line-height: 1.4;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    user-select: none;
    position: relative;
    overflow: visible;
    z-index: 1;
    white-space: normal;
    word-wrap: break-word;
    gap: 0;
}

/* Asegurar que el contenido de texto del toggle se pueda envolver */
.submenu-toggle > *:not(.bi):not(.bi-chevron-down):not(.bi-chevron-up)[b-drd9bderwa] {
    flex: 1;
    min-width: 0;
}

.submenu-toggle[b-drd9bderwa]::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255,255,255,0.1);
    transform: translate(-50%, -50%);
    transition: width 0.6s ease, height 0.6s ease;
    pointer-events: none;
    z-index: 0;
}

    .submenu-toggle:hover[b-drd9bderwa] {
        background-color: rgba(255,255,255,0.1);
        color: white;
        transform: translateX(5px);
    }

    .submenu-toggle:hover[b-drd9bderwa]::after {
        width: 300px;
        height: 300px;
    }

    .submenu-toggle:hover .bi[b-drd9bderwa] {
        transform: scale(1.2) rotate(5deg);
    }

    .submenu-toggle .bi-chevron-down[b-drd9bderwa],
    .submenu-toggle .bi-chevron-up[b-drd9bderwa] {
        font-size: 0.75rem;
        margin-left: auto;
        margin-top: 0.3rem;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        flex-shrink: 0;
    }

    .submenu-toggle:hover .bi-chevron-down[b-drd9bderwa],
    .submenu-toggle:hover .bi-chevron-up[b-drd9bderwa] {
        transform: scale(1.3);
    }

/* Nivel 1 - Submen� principal (Oficina) */
.submenu[b-drd9bderwa] {
    display: none;
    padding: 0.5rem 0;
    background-color: rgba(0,0,0,0.25);
    border-left: 3px solid rgba(220, 53, 69, 0.5);
    margin-left: 0.75rem;
    margin-top: 0.25rem;
    margin-bottom: 0.25rem;
    border-radius: 0 4px 4px 0;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    max-height: 500px;
    overflow-y: auto;
}

/* Scrollbar para submen�s - Webkit */
.submenu[b-drd9bderwa]::-webkit-scrollbar {
    width: 6px;
}

.submenu[b-drd9bderwa]::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.3);
    border-radius: 10px;
}

.submenu[b-drd9bderwa]::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(220, 53, 69, 0.6) 0%, rgba(255, 107, 122, 0.6) 100%);
    border-radius: 10px;
}

.submenu[b-drd9bderwa]::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, rgba(255, 107, 122, 0.8) 0%, rgba(220, 53, 69, 0.8) 100%);
}

/* Scrollbar para submen�s - Firefox */
.submenu[b-drd9bderwa] {
    scrollbar-width: thin;
    scrollbar-color: rgba(220, 53, 69, 0.6) rgba(0, 0, 0, 0.3);
}

    .submenu.show[b-drd9bderwa] {
        display: block;
        animation: slideDown-b-drd9bderwa 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }

@keyframes slideDown-b-drd9bderwa {
    from {
        opacity: 0;
        max-height: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        max-height: 500px;
        transform: translateY(0);
    }
}

    .submenu .nav-item[b-drd9bderwa] {
        padding: 0.15rem 0;
        margin: 0;
    }

        .submenu .nav-item:first-of-type[b-drd9bderwa] {
            padding-top: 0.25rem;
        }

        .submenu .nav-item:last-of-type[b-drd9bderwa] {
            padding-bottom: 0.25rem;
        }

        .submenu .nav-item[b-drd9bderwa]  a {
            min-height: 2.5rem;
            line-height: 1.3;
            font-size: 0.85rem;
            padding: 0.4rem 1rem;
            margin: 0.1rem 0.5rem;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            position: relative;
            white-space: normal;
            word-wrap: break-word;
            align-items: flex-start;
        }

        .submenu .nav-item[b-drd9bderwa]  a::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            height: 100%;
            width: 2px;
            background: linear-gradient(to bottom, #dc3545, #ff6b7a);
            transform: scaleY(0);
            transition: transform 0.3s ease;
        }

            .submenu .nav-item[b-drd9bderwa]  a:hover {
                background-color: rgba(255,255,255,0.15);
                transform: translateX(8px);
                box-shadow: 0 2px 8px rgba(220, 53, 69, 0.2);
            }

            .submenu .nav-item[b-drd9bderwa]  a:hover::before {
                transform: scaleY(1);
            }

            .submenu .nav-item[b-drd9bderwa]  a:hover .bi {
                transform: scale(1.15) rotate(-5deg);
                color: #ff6b7a;
            }

            .submenu .nav-item[b-drd9bderwa]  a.active {
                background-color: rgba(220, 53, 69, 0.3);
                color: white;
                font-weight: 500;
                border-left: 3px solid #dc3545;
            }

/* Nivel 2 - Toggle de Mantenimiento */
.submenu .submenu-toggle.submenu-level-2[b-drd9bderwa] {
    font-size: 0.85rem;
    min-height: 2.5rem;
    line-height: 1.3;
    padding: 0.4rem 1rem;
    margin: 0.1rem 0.5rem;
    white-space: normal;
    word-wrap: break-word;
}

    .submenu .submenu-toggle.submenu-level-2:hover[b-drd9bderwa] {
        background-color: rgba(255,255,255,0.15);
        transform: translateX(6px);
    }

    .submenu .submenu-toggle.submenu-level-2:hover .bi[b-drd9bderwa] {
        transform: scale(1.15) rotate(3deg);
    }

    .submenu .submenu-toggle.submenu-level-2 .bi-chevron-down[b-drd9bderwa],
    .submenu .submenu-toggle.submenu-level-2 .bi-chevron-up[b-drd9bderwa] {
        font-size: 0.7rem;
    }

/* Nivel 2 - Submen� de Mantenimiento */
.submenu .submenu.submenu-level-2[b-drd9bderwa] {
    padding: 0.25rem 0;
    background-color: rgba(0,0,0,0.35);
    border-left: 2px solid rgba(220, 53, 69, 0.4);
    margin-left: 1rem;
    margin-top: 0.2rem;
    margin-bottom: 0.2rem;
    margin-right: 0.5rem;
    max-height: 400px;
    overflow-y: auto;
}

/* Scrollbar para submen�s nivel 2 - Webkit */
.submenu .submenu.submenu-level-2[b-drd9bderwa]::-webkit-scrollbar {
    width: 5px;
}

.submenu .submenu.submenu-level-2[b-drd9bderwa]::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.4);
    border-radius: 10px;
}

.submenu .submenu.submenu-level-2[b-drd9bderwa]::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(220, 53, 69, 0.5) 0%, rgba(255, 107, 122, 0.5) 100%);
    border-radius: 10px;
}

.submenu .submenu.submenu-level-2[b-drd9bderwa]::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, rgba(255, 107, 122, 0.7) 0%, rgba(220, 53, 69, 0.7) 100%);
}

/* Scrollbar para submen�s nivel 2 - Firefox */
.submenu .submenu.submenu-level-2[b-drd9bderwa] {
    scrollbar-width: thin;
    scrollbar-color: rgba(220, 53, 69, 0.5) rgba(0, 0, 0, 0.4);
}

    .submenu .submenu.submenu-level-2.show[b-drd9bderwa] {
        display: block;
        animation: slideDown-b-drd9bderwa 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .submenu .submenu.submenu-level-2 .nav-item[b-drd9bderwa] {
        padding: 0.1rem 0;
    }

        .submenu .submenu.submenu-level-2 .nav-item[b-drd9bderwa]  a {
            min-height: 2.25rem;
            line-height: 1.3;
            font-size: 0.8rem;
            padding: 0.35rem 0.75rem;
            margin: 0.05rem 0.25rem;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            white-space: normal;
            word-wrap: break-word;
            align-items: flex-start;
        }

            .submenu .submenu.submenu-level-2 .nav-item[b-drd9bderwa]  a:hover {
                background-color: rgba(255,255,255,0.2);
                transform: translateX(6px) scale(1.02);
                box-shadow: 0 2px 6px rgba(220, 53, 69, 0.15);
            }

            .submenu .submenu.submenu-level-2 .nav-item[b-drd9bderwa]  a:hover .bi {
                transform: scale(1.1);
                color: #ff6b7a;
            }

            .submenu .submenu.submenu-level-2 .nav-item[b-drd9bderwa]  a.active {
                background-color: rgba(220, 53, 69, 0.4);
                border-left: 2px solid #dc3545;
            }

.nav-item[b-drd9bderwa]  a.active {
    background-color: rgba(255,255,255,0.25);
    color: white;
    font-weight: 500;
}

.nav-item[b-drd9bderwa]  a.active::before {
    transform: scaleY(1);
}

.nav-item[b-drd9bderwa]  a.active .bi {
    color: #ff6b7a;
    animation: pulseIcon-b-drd9bderwa 2s ease-in-out infinite;
}

@keyframes pulseIcon-b-drd9bderwa {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

.nav-item[b-drd9bderwa]  a:hover {
    background-color: rgba(255,255,255,0.15);
    color: white;
    transform: translateX(5px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

.nav-item[b-drd9bderwa]  a:hover::before {
    transform: scaleY(1);
}

.nav-item[b-drd9bderwa]  a:hover .bi {
    transform: scale(1.15) rotate(-3deg);
}

.nav-scrollable[b-drd9bderwa] {
    display: flex;
    flex-direction: column;
    height: calc(100dvh - 3.5rem);
    overflow-y: auto;
    animation: fadeIn-b-drd9bderwa 0.6s ease;
}

/* Estilos personalizados para la barra de desplazamiento - Webkit (Chrome, Safari, Edge) */
.nav-scrollable[b-drd9bderwa]::-webkit-scrollbar {
    width: 8px;
}

.nav-scrollable[b-drd9bderwa]::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    margin: 0.5rem 0;
}

.nav-scrollable[b-drd9bderwa]::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #dc3545 0%, #ff6b7a 100%);
    border-radius: 10px;
    transition: all 0.3s ease;
}

.nav-scrollable[b-drd9bderwa]::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #ff6b7a 0%, #dc3545 100%);
    box-shadow: 0 0 10px rgba(220, 53, 69, 0.5);
    width: 10px;
}

/* Estilos para Firefox */
.nav-scrollable[b-drd9bderwa] {
    scrollbar-width: thin;
    scrollbar-color: #dc3545 rgba(0, 0, 0, 0.2);
}

@keyframes fadeIn-b-drd9bderwa {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.nav-scrollable .nav[b-drd9bderwa] {
    flex: 1;
}

    .nav-scrollable .mt-auto[b-drd9bderwa] {
        margin-top: auto !important;
        padding-bottom: 1rem;
    }

/* Nivel 3 - Tercer nivel de submen� (Ficheros dentro de Personal) */
.submenu-level-3[b-drd9bderwa] {
    background-color: rgba(0,0,0,0.4);
    border-left: 2px solid rgba(255, 107, 122, 0.5);
    margin-left: 0.5rem;
    margin-top: 0.2rem;
    margin-bottom: 0.2rem;
    max-height: 350px;
}

    .submenu-level-3 .nav-item[b-drd9bderwa]  a {
        font-size: 0.78rem;
        padding: 0.3rem 0.7rem;
        margin: 0.1rem 0.35rem;
        min-height: 2rem;
    }

        .submenu-level-3 .nav-item[b-drd9bderwa]  a .bi {
            font-size: 0.95rem;
            margin-right: 0.55rem;
        }

        .submenu-level-3 .nav-item[b-drd9bderwa]  a:hover {
            background-color: rgba(255,255,255,0.25);
            transform: translateX(5px) scale(1.02);
        }

        .submenu-level-3 .nav-item[b-drd9bderwa]  a.active {
            background-color: rgba(220, 53, 69, 0.5);
        }

.submenu-toggle.submenu-level-3[b-drd9bderwa] {
    font-size: 0.8rem;
    padding: 0.35rem 0.7rem;
    margin: 0.1rem 0.35rem;
    min-height: 2.2rem;
}

    .submenu-toggle.submenu-level-3 .bi[b-drd9bderwa] {
        font-size: 0.95rem;
        margin-right: 0.55rem;
    }

    .submenu-toggle.submenu-level-3:hover[b-drd9bderwa] {
        transform: translateX(4px);
    }

/* Estilos espec�ficos para m�viles */
@media (max-width: 640.98px) {
    .nav-scrollable[b-drd9bderwa] {
        max-height: calc(100dvh - 60px); /* Altura del header m�vil */
    }
    
    .nav-scrollable .mt-auto[b-drd9bderwa] {
        padding-bottom: 2rem; /* Espacio extra para la barra inferior del navegador m�vil */
    }
    
    .nav-item[b-drd9bderwa] {
        font-size: 0.85rem;
    }

    .nav-item[b-drd9bderwa]  a {
        min-height: 2.5rem;
        line-height: 1.3;
        padding: 0.4rem 0.75rem;
        white-space: normal;
        word-wrap: break-word;
    }

    .navbar-brand[b-drd9bderwa] {
        font-size: 0.95rem;
    }

    .btn-danger[b-drd9bderwa] {
        padding: 0.65rem 1rem;
        font-size: 0.9rem;
    }
    
    .text-white.mb-2[b-drd9bderwa] {
        font-size: 0.85rem;
    }
}

.bi-fingerprint[b-drd9bderwa] {
    margin-left: 1em;
}




/* /Components/Pages/Biblioteca.razor.rz.scp.css */
.sortable[b-p7vafoy7zt] {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
}

.sortable:hover[b-p7vafoy7zt] {
    background-color: rgba(220, 53, 69, 0.1);
}

.card[b-p7vafoy7zt] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover[b-p7vafoy7zt] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important;
}

.table-hover tbody tr:hover[b-p7vafoy7zt] {
    background-color: rgba(220, 53, 69, 0.05);
}

.rating-stars i[b-p7vafoy7zt] {
    transition: color 0.2s;
}

.rating-stars i:hover[b-p7vafoy7zt] {
    transform: scale(1.2);
}
/* /Components/Pages/CalendarioLaboral.razor.rz.scp.css */
.card-header[b-tcpr4qpe7n] {
    font-weight: 600;
}

.table th[b-tcpr4qpe7n] {
    background-color: #f8f9fa;
    font-weight: 600;
    border-bottom: 2px solid #dee2e6;
}

.table-hover tbody tr:hover[b-tcpr4qpe7n] {
    background-color: #f8f9fa;
}

.badge[b-tcpr4qpe7n] {
    padding: 0.35em 0.65em;
    font-size: 0.75em;
    font-weight: 500;
}

.btn-outline-primary:hover[b-tcpr4qpe7n] {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn-outline-danger:hover[b-tcpr4qpe7n] {
    color: #fff;
    background-color: #dc3545;
    border-color: #dc3545;
}

.form-label.fw-bold[b-tcpr4qpe7n] {
    color: #495057;
}

.modal-content[b-tcpr4qpe7n] {
    border-radius: 0.5rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.modal-header[b-tcpr4qpe7n] {
    border-bottom: 2px solid rgba(255, 255, 255, 0.2);
}

.modal-footer[b-tcpr4qpe7n] {
    border-top: 1px solid #dee2e6;
}

.alert[b-tcpr4qpe7n] {
    border-left: 4px solid;
    border-radius: 0.375rem;
}

.alert-info[b-tcpr4qpe7n] {
    border-left-color: #0dcaf0;
}

.alert-success[b-tcpr4qpe7n] {
    border-left-color: #198754;
}

.alert-warning[b-tcpr4qpe7n] {
    border-left-color: #ffc107;
}

.spinner-border[b-tcpr4qpe7n] {
    width: 3rem;
    height: 3rem;
}

.card[b-tcpr4qpe7n] {
    border-radius: 0.5rem;
    border: 1px solid #e0e0e0;
}

.card.shadow[b-tcpr4qpe7n] {
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.card.bg-light[b-tcpr4qpe7n] {
    background-color: #f8f9fa !important;
}

.table-responsive[b-tcpr4qpe7n] {
    border-radius: 0.375rem;
}

.btn[b-tcpr4qpe7n] {
    font-weight: 500;
}

.btn-sm[b-tcpr4qpe7n] {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
}

h2[b-tcpr4qpe7n] {
    font-weight: 600;
}

h3[b-tcpr4qpe7n] {
    font-weight: 600;
}

h5[b-tcpr4qpe7n] {
    font-weight: 500;
}

h6[b-tcpr4qpe7n] {
    font-weight: 600;
}

small.text-muted[b-tcpr4qpe7n] {
    color: #6c757d !important;
}

.text-danger[b-tcpr4qpe7n] {
    color: #dc3545 !important;
}

.text-warning[b-tcpr4qpe7n] {
    color: #ffc107 !important;
}

.bg-primary[b-tcpr4qpe7n] {
    background-color: #0d6efd !important;
}

.bg-success[b-tcpr4qpe7n] {
    background-color: #198754 !important;
}

.bg-danger[b-tcpr4qpe7n] {
    background-color: #dc3545 !important;
}

.bg-warning[b-tcpr4qpe7n] {
    background-color: #ffc107 !important;
}

.bg-info[b-tcpr4qpe7n] {
    background-color: #0dcaf0 !important;
}

/* Estilos para el calendario */
.calendario-mes td[b-tcpr4qpe7n] {
    padding: 5px;
    font-size: 0.85rem;
    border: 1px solid #e0e0e0;
}

.calendario-mes th[b-tcpr4qpe7n] {
    padding: 3px;
    font-size: 0.75rem;
    font-weight: 600;
}

/* Festivo Nacional - naranja */
.dia-festivo-nacional[b-tcpr4qpe7n] {
    background-color: #FFB84D !important;
    color: #000 !important;
    font-weight: bold;
}

/* Festivo Regional - azul */
.dia-festivo-regional[b-tcpr4qpe7n] {
    background-color: #87CEEB !important;
    color: #000 !important;
    font-weight: bold;
}

/* Festivo Local - rosa */
.dia-festivo-local[b-tcpr4qpe7n] {
    background-color: #FF99B3 !important;
    color: #000 !important;
    font-weight: bold;
}

/* Jornada Intensiva - verde */
.dia-jornada-intensiva[b-tcpr4qpe7n] {
    background-color: #66DD66 !important;
    color: #000 !important;
    font-weight: bold;
}

/* Vacaciones - amarillo */
.dia-vacaciones[b-tcpr4qpe7n] {
    background-color: #FFFF66 !important;
    color: #000 !important;
    font-weight: bold;
}

.dia-seleccionado[b-tcpr4qpe7n] {
    background-color: #212529 !important;
    color: white !important;
    font-weight: bold;
    border: 2px solid #ffc107 !important;
    position: relative;
}

.dia-seleccionado .small-icon[b-tcpr4qpe7n] {
    position: absolute;
    top: 2px;
    right: 2px;
    font-size: 0.6rem;
    color: #ffc107;
}

.calendario-mes td:hover[b-tcpr4qpe7n] {
    background-color: #f8f9fa;
    cursor: pointer;
    transform: scale(1.1);
    transition: all 0.2s ease;
}

.calendario-mes .dia-festivo-nacional:hover[b-tcpr4qpe7n],
.calendario-mes .dia-festivo-regional:hover[b-tcpr4qpe7n],
.calendario-mes .dia-festivo-local:hover[b-tcpr4qpe7n],
.calendario-mes .dia-jornada-intensiva:hover[b-tcpr4qpe7n],
.calendario-mes .dia-vacaciones:hover[b-tcpr4qpe7n],
.calendario-mes .dia-seleccionado:hover[b-tcpr4qpe7n] {
    opacity: 0.8;
}
/* /Components/Pages/CalendarioLaboralMensual.razor.rz.scp.css */
/* Contenedor principal - sin scroll, todo visible */
.calendario-horizontal[b-jgppfekid4] {
    display: flex;
    gap: 2px;
    overflow-x: hidden;
    padding: 15px 5px;
    min-height: 400px;
    flex-wrap: nowrap;
    width: 100%;
}

/* Cada columna (día) - ajuste automático */
.dia-columna[b-jgppfekid4] {
    flex: 1;
    min-width: 0;
    max-width: none;
    background: white;
    border: 1px solid #dee2e6;
    border-radius: 3px;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 1px 2px rgba(0,0,0,0.08);
    display: flex;
    flex-direction: column;
}

.dia-columna:hover[b-jgppfekid4] {
    border-color: #0d6efd;
    transform: translateY(-3px);
    box-shadow: 0 3px 8px rgba(0,0,0,0.12);
}

/* Día seleccionado */
.dia-columna.seleccionado[b-jgppfekid4] {
    background-color: #fff3cd;
    border-color: #ffc107;
    border-width: 2px;
}

/* Fines de semana */
.dia-columna.fin-semana[b-jgppfekid4] {
    background-color: #f8f9fa;
}

.dia-columna.fin-semana .dia-nombre[b-jgppfekid4] {
    color: #dc3545;
    font-weight: bold;
}

/* Cabecera del día */
.dia-cabecera[b-jgppfekid4] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 6px 2px;
    text-align: center;
    border-radius: 3px 3px 0 0;
    border-bottom: 1px solid rgba(0,0,0,0.1);
}

.dia-columna.fin-semana .dia-cabecera[b-jgppfekid4] {
    background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
}

.dia-numero[b-jgppfekid4] {
    font-size: 1.1rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 1px;
}

.dia-nombre[b-jgppfekid4] {
    font-size: 0.5rem;
    text-transform: uppercase;
    letter-spacing: 0px;
    font-weight: 600;
}

/* Badge de selección */
.badge-seleccionado[b-jgppfekid4] {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #ffc107;
    color: white;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    box-shadow: 0 1px 4px rgba(0,0,0,0.2);
    z-index: 10;
}

/* Contenido del día */
.dia-contenido[b-jgppfekid4] {
    padding: 3px 1px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    overflow-y: auto;
}

/* Cada registro */
.registro-item[b-jgppfekid4] {
    padding: 3px 1px;
    border-radius: 2px;
    text-align: center;
    font-size: 0.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    box-shadow: 0 1px 2px rgba(0,0,0,0.08);
    transition: all 0.2s ease;
}

.registro-item:hover[b-jgppfekid4] {
    transform: scale(1.05);
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}

.registro-item i[b-jgppfekid4] {
    font-size: 0.75rem;
    margin-bottom: 0px;
}

.registro-hora[b-jgppfekid4] {
    font-weight: bold;
    font-size: 0.45rem;
}

.registro-item.bg-success[b-jgppfekid4] {
    background-color: #28a745 !important;
}

.registro-item.bg-warning[b-jgppfekid4] {
    background-color: #ffc107 !important;
    color: #000 !important;
}

/* Sin registros */
.sin-registros[b-jgppfekid4] {
    text-align: center;
    color: #28a745;
    padding: 10px 0;
    font-size: 1.2rem;
    transition: all 0.2s ease;
}

.sin-registros:hover[b-jgppfekid4] {
    color: #1e7e34;
    transform: scale(1.2);
}

/* Scrollbar horizontal personalizado */
.calendario-horizontal[b-jgppfekid4]::-webkit-scrollbar {
    height: 10px;
}

.calendario-horizontal[b-jgppfekid4]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 5px;
}

.calendario-horizontal[b-jgppfekid4]::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 5px;
}

.calendario-horizontal[b-jgppfekid4]::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* Posicionamiento relativo para badge */
.dia-columna[b-jgppfekid4] {
    position: relative;
}

/* Scrollbar vertical en contenido del día */
.dia-contenido[b-jgppfekid4]::-webkit-scrollbar {
    width: 4px;
}

.dia-contenido[b-jgppfekid4]::-webkit-scrollbar-track {
    background: transparent;
}

.dia-contenido[b-jgppfekid4]::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 2px;
}


/* /Components/Pages/ConceptosHonorarios.razor.rz.scp.css */
.card[b-xxmhwi0agd] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover[b-xxmhwi0agd] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important;
}

.table-hover tbody tr:hover[b-xxmhwi0agd] {
    background-color: rgba(220, 53, 69, 0.05);
}

.btn-group .btn[b-xxmhwi0agd] {
    margin: 0 2px;
}

.sortable[b-xxmhwi0agd] {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
}

.sortable:hover[b-xxmhwi0agd] {
    background-color: rgba(220, 53, 69, 0.1);
}

.sortable i[b-xxmhwi0agd] {
    font-size: 0.9em;
    margin-left: 0.25rem;
}

.modal.show[b-xxmhwi0agd] {
    display: block;
}
/* /Components/Pages/ConceptosPresupuestos.razor.rz.scp.css */
.card[b-hp1d4f8hbx] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover[b-hp1d4f8hbx] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important;
}

.table-hover tbody tr:hover[b-hp1d4f8hbx] {
    background-color: rgba(220, 53, 69, 0.05);
}

.btn-group .btn[b-hp1d4f8hbx] {
    margin: 0 2px;
}

.sortable[b-hp1d4f8hbx] {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
}

.sortable:hover[b-hp1d4f8hbx] {
    background-color: rgba(220, 53, 69, 0.1);
}

.sortable i[b-hp1d4f8hbx] {
    font-size: 0.9em;
    margin-left: 0.25rem;
}

.modal.show[b-hp1d4f8hbx] {
    display: block;
}
/* /Components/Pages/ContactosArquitectura.razor.rz.scp.css */
.card[b-thvm0ql53n] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-thvm0ql53n] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-thvm0ql53n] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-thvm0ql53n] { margin: 0 2px; }
.sortable[b-thvm0ql53n] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-thvm0ql53n] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-thvm0ql53n] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-thvm0ql53n] { display: block; }

/* Separadores de secciones en el formulario */
hr[b-thvm0ql53n] {
    border-color: rgba(220, 53, 69, 0.2);
    margin: 1.5rem 0;
}

/* Estilos para secciones del formulario */
.text-primary[b-thvm0ql53n] {
    font-weight: 600;
}

/* Modal extra large para acomodar todos los campos */
.modal-xl[b-thvm0ql53n] {
    max-width: 1140px;
}
/* /Components/Pages/ContactosEstructuras.razor.rz.scp.css */
.card[b-mt5dl85f5q] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-mt5dl85f5q] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-mt5dl85f5q] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-mt5dl85f5q] { margin: 0 2px; }
.sortable[b-mt5dl85f5q] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-mt5dl85f5q] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-mt5dl85f5q] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-mt5dl85f5q] { display: block; }

/* Separadores de secciones en el formulario */
hr[b-mt5dl85f5q] {
    border-color: rgba(220, 53, 69, 0.2);
    margin: 1.5rem 0;
}

/* Estilos para secciones del formulario */
.text-primary[b-mt5dl85f5q] {
    font-weight: 600;
}

/* Modal extra large para acomodar todos los campos */
.modal-xl[b-mt5dl85f5q] {
    max-width: 1140px;
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
/* Estilos para el Dashboard */

/* Reloj principal */
#reloj[b-fpwwcd3phb] {
    font-family: 'Courier New', monospace;
    font-weight: bold;
    color: #0d6efd;
    text-shadow: 0 0 10px rgba(13, 110, 253, 0.3);
}

/* Cards con sombra animada */
.card[b-fpwwcd3phb] {
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.card:hover[b-fpwwcd3phb] {
    transform: translateY(-2px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15) !important;
}

/* Botones de acceso r�pido */
.btn-outline-primary[b-fpwwcd3phb],
.btn-outline-secondary[b-fpwwcd3phb],
.btn-outline-info[b-fpwwcd3phb],
.btn-outline-success[b-fpwwcd3phb],
.btn-outline-warning[b-fpwwcd3phb],
.btn-outline-danger[b-fpwwcd3phb],
.btn-outline-dark[b-fpwwcd3phb] {
    border-width: 2px;
    font-weight: 500;
    transition: all 0.3s ease;
}

.btn-outline-primary:hover[b-fpwwcd3phb],
.btn-outline-secondary:hover[b-fpwwcd3phb],
.btn-outline-info:hover[b-fpwwcd3phb],
.btn-outline-success:hover[b-fpwwcd3phb],
.btn-outline-warning:hover[b-fpwwcd3phb],
.btn-outline-danger:hover[b-fpwwcd3phb],
.btn-outline-dark:hover[b-fpwwcd3phb] {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

/* Iconos de accesos r�pidos */
.btn i[b-fpwwcd3phb] {
    transition: transform 0.3s ease;
}

.btn:hover i[b-fpwwcd3phb] {
    transform: scale(1.1);
}

/* Animaci�n de entrada */
@keyframes fadeInUp-b-fpwwcd3phb {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.card[b-fpwwcd3phb] {
    animation: fadeInUp-b-fpwwcd3phb 0.4s ease-out;
}

.card:nth-child(1)[b-fpwwcd3phb] {
    animation-delay: 0.1s;
}

.card:nth-child(2)[b-fpwwcd3phb] {
    animation-delay: 0.2s;
}

/* Alertas mejoradas */
.alert[b-fpwwcd3phb] {
    border-left: 4px solid;
    animation: slideInRight-b-fpwwcd3phb 0.3s ease-out;
}

@keyframes slideInRight-b-fpwwcd3phb {
    from {
        opacity: 0;
        transform: translateX(50px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Resumen del d�a - cards de entrada/salida */
.card .card-body.text-center h4[b-fpwwcd3phb] {
    font-family: 'Courier New', monospace;
    font-weight: bold;
}

/* Responsive */
@media (max-width: 768px) {
    .btn i[b-fpwwcd3phb] {
        font-size: 1.5rem !important;
    }
    
    .h2[b-fpwwcd3phb] {
        font-size: 1.5rem;
    }
}

/* Mejora visual de los botones grandes */
.btn-lg[b-fpwwcd3phb] {
    font-size: 1.1rem;
    padding: 0.75rem 1.25rem;
}

/* Cards de informaci�n */
.bg-light[b-fpwwcd3phb] {
    background-color: #f8f9fa !important;
    border: 1px solid #e9ecef;
}

/* Espaciado de iconos en listas */
.d-flex i[b-fpwwcd3phb] {
    min-width: 20px;
}
/* /Components/Pages/DatosEmpleados.razor.rz.scp.css */
.card[b-vesfu6i2ih] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-vesfu6i2ih] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-vesfu6i2ih] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-vesfu6i2ih] { margin: 0 2px; }
.sortable[b-vesfu6i2ih] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-vesfu6i2ih] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-vesfu6i2ih] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-vesfu6i2ih] { display: block; }
/* /Components/Pages/Departamentos.razor.rz.scp.css */
.card[b-no0oi15p2q] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover[b-no0oi15p2q] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important;
}

.table-hover tbody tr:hover[b-no0oi15p2q] {
    background-color: rgba(220, 53, 69, 0.05);
}

.btn-group .btn[b-no0oi15p2q] {
    margin: 0 2px;
}

.badge[b-no0oi15p2q] {
    font-weight: 500;
    padding: 0.4em 0.8em;
}

.form-label[b-no0oi15p2q] {
    color: #495057;
    font-size: 0.95rem;
}

.card-header[b-no0oi15p2q] {
    border-bottom: 3px solid rgba(255, 255, 255, 0.2);
}

.bi[b-no0oi15p2q] {
    font-size: 1.1em;
}

.alert-dismissible .btn-close[b-no0oi15p2q] {
    padding: 0.75rem;
}

.sortable[b-no0oi15p2q] {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
}

.sortable:hover[b-no0oi15p2q] {
    background-color: rgba(220, 53, 69, 0.1);
}

.sortable i[b-no0oi15p2q] {
    font-size: 0.9em;
    margin-left: 0.25rem;
}

.modal.show[b-no0oi15p2q] {
    display: block;
}

/* Estilos para el preview de color */
.color-preview[b-no0oi15p2q] {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: 1px solid #dee2e6;
    display: inline-block;
}

/* Estilos para el input de color */
.form-control-color[b-no0oi15p2q] {
    max-width: 60px;
    padding: 0.375rem;
}
/* /Components/Pages/EditarEmpleado.razor.rz.scp.css */
.container[b-xq0cq2rfqq] {
    margin-top: 1rem !important;
    padding-top: 0.5rem;
}

.card[b-xq0cq2rfqq] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover[b-xq0cq2rfqq] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important;
}

.form-label[b-xq0cq2rfqq] {
    color: #495057;
    font-size: 0.95rem;
}

.card-header[b-xq0cq2rfqq] {
    border-bottom: 3px solid rgba(255, 255, 255, 0.2);
}
/* /Components/Pages/Empleados.razor.rz.scp.css */
.card[b-uuh44awq8r] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover[b-uuh44awq8r] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important;
}

.table-hover tbody tr:hover[b-uuh44awq8r] {
    background-color: rgba(220, 53, 69, 0.05);
}

.btn-group .btn[b-uuh44awq8r] {
    margin: 0 2px;
}

.badge[b-uuh44awq8r] {
    font-weight: 500;
    padding: 0.4em 0.8em;
}

.form-label[b-uuh44awq8r] {
    color: #495057;
    font-size: 0.95rem;
}

.card-header[b-uuh44awq8r] {
    border-bottom: 3px solid rgba(255, 255, 255, 0.2);
}

.bi[b-uuh44awq8r] {
    font-size: 1.1em;
}

.alert-dismissible .btn-close[b-uuh44awq8r] {
    padding: 0.75rem;
}

.sortable[b-uuh44awq8r] {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
}

.sortable:hover[b-uuh44awq8r] {
    background-color: rgba(220, 53, 69, 0.1);
}

.sortable i[b-uuh44awq8r] {
    font-size: 0.9em;
    margin-left: 0.25rem;
}
/* /Components/Pages/EmpleadosDatos.razor.rz.scp.css */
.card[b-4vrgpiw2vx] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-4vrgpiw2vx] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-4vrgpiw2vx] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-4vrgpiw2vx] { margin: 0 2px; }
.sortable[b-4vrgpiw2vx] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-4vrgpiw2vx] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-4vrgpiw2vx] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-4vrgpiw2vx] { display: block; }

/* Estilos para las pestañas (tabs) */
.nav-tabs .nav-link[b-4vrgpiw2vx] {
    cursor: pointer;
    border: 1px solid transparent;
    border-radius: 0.25rem 0.25rem 0 0;
    transition: all 0.3s ease;
}

.nav-tabs .nav-link:hover[b-4vrgpiw2vx] {
    border-color: #dee2e6;
    background-color: #f8f9fa;
}

.nav-tabs .nav-link.active[b-4vrgpiw2vx] {
    color: #dc3545;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff;
    font-weight: 600;
}

.nav-tabs .nav-link i[b-4vrgpiw2vx] {
    font-size: 1rem;
}

/* Separadores de secciones en el formulario */
hr[b-4vrgpiw2vx] {
    border-color: rgba(220, 53, 69, 0.2);
    margin: 1.5rem 0;
}

/* Estilos para secciones del formulario */
.text-primary[b-4vrgpiw2vx] {
    font-weight: 600;
}

/* Modal extra large para acomodar todos los campos */
.modal-xl[b-4vrgpiw2vx] {
    max-width: 1140px;
}

/* Tab content transitions */
.tab-content > div[b-4vrgpiw2vx] {
    transition: opacity 0.3s ease-in-out;
}

.tab-content > div.show[b-4vrgpiw2vx] {
    opacity: 1;
}

.tab-content > div.d-none[b-4vrgpiw2vx] {
    opacity: 0;
}

/* Checkboxes */
.form-check-input:checked[b-4vrgpiw2vx] {
    background-color: #dc3545;
    border-color: #dc3545;
}

.form-check-input:focus[b-4vrgpiw2vx] {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);
}
/* /Components/Pages/FormasEntrega.razor.rz.scp.css */
.card[b-bw39r8cvg0] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-bw39r8cvg0] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-bw39r8cvg0] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-bw39r8cvg0] { margin: 0 2px; }
.sortable[b-bw39r8cvg0] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-bw39r8cvg0] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-bw39r8cvg0] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-bw39r8cvg0] { display: block; }
/* /Components/Pages/GestionAccionesMejora.razor.rz.scp.css */
.modal[b-13wy96i844] {
    display: block;
}

.table-hover tbody tr:hover[b-13wy96i844] {
    background-color: rgba(0, 123, 255, 0.05);
}

.badge[b-13wy96i844] {
    font-size: 0.9em;
    padding: 0.4em 0.8em;
}

/* Estilos para botones deshabilitados de acciones de mejora cerradas */
.btn:disabled[b-13wy96i844] {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

.btn-outline-primary:disabled[b-13wy96i844],
.btn-outline-danger:disabled[b-13wy96i844] {
    border-color: #dee2e6;
    color: #6c757d;
}

.btn-outline-primary:disabled:hover[b-13wy96i844],
.btn-outline-danger:disabled:hover[b-13wy96i844] {
    background-color: transparent;
    border-color: #dee2e6;
    color: #6c757d;
}

/* Estilos para encabezados ordenables */
.sortable-header[b-13wy96i844] {
    cursor: pointer;
    user-select: none;
    transition: all 0.2s ease;
    padding: 0.75rem;
}

    .sortable-header:hover[b-13wy96i844] {
        background-color: rgba(0, 0, 0, 0.075);
    }

    .sortable-header:active[b-13wy96i844] {
        background-color: rgba(0, 0, 0, 0.15);
    }

    .sortable-header i[b-13wy96i844] {
        font-size: 0.875rem;
        transition: transform 0.2s ease;
    }

    .sortable-header:hover i[b-13wy96i844] {
        transform: scale(1.2);
    }
/* /Components/Pages/GestionAnotaciones.razor.rz.scp.css */
/* Estilos para encabezados ordenables */
.sortable-header[b-t5pg766unp] {
    cursor: pointer;
    user-select: none;
    transition: all 0.2s ease;
    padding: 0.75rem;
}

    .sortable-header:hover[b-t5pg766unp] {
        background-color: rgba(0, 0, 0, 0.075);
    }

    .sortable-header:active[b-t5pg766unp] {
        background-color: rgba(0, 0, 0, 0.15);
    }

    .sortable-header i[b-t5pg766unp] {
        font-size: 0.875rem;
        transition: transform 0.2s ease;
    }

    .sortable-header:hover i[b-t5pg766unp] {
        transform: scale(1.2);
    }
/* /Components/Pages/GestionAuditoriaFichaje.razor.rz.scp.css */
/* Estilos para encabezados ordenables */
.sortable-header[b-fjmldib8nk] {
    cursor: pointer;
    user-select: none;
    transition: all 0.2s ease;
    padding: 0.75rem;
}

    .sortable-header:hover[b-fjmldib8nk] {
        background-color: rgba(255, 255, 255, 0.15);
    }

    .sortable-header:active[b-fjmldib8nk] {
        background-color: rgba(255, 255, 255, 0.25);
    }

    .sortable-header i[b-fjmldib8nk] {
        font-size: 0.875rem;
        transition: transform 0.2s ease;
    }

    .sortable-header:hover i[b-fjmldib8nk] {
        transform: scale(1.2);
    }

/* Estilos para el modal */
.modal[b-fjmldib8nk] {
    display: block;
}

/* Estilos para los badges de acci�n */
.badge[b-fjmldib8nk] {
    font-size: 0.85rem;
    padding: 0.4em 0.7em;
}

/* Estilos para el c�digo pre en el modal */
pre[b-fjmldib8nk] {
    max-height: 300px;
    overflow-y: auto;
    font-size: 0.85rem;
}

/* Animaci�n suave para las filas de la tabla */
.table tbody tr[b-fjmldib8nk] {
    transition: background-color 0.2s ease;
}

    .table tbody tr:hover[b-fjmldib8nk] {
        background-color: rgba(0, 123, 255, 0.05);
    }
/* /Components/Pages/GestionEquipos.razor.rz.scp.css */
/* Estilos para encabezados ordenables */
.sortable-header[b-rktx8slepb] {
    cursor: pointer;
    user-select: none;
    transition: all 0.2s ease;
    padding: 0.75rem;
}

    .sortable-header:hover[b-rktx8slepb] {
        background-color: rgba(0, 0, 0, 0.075);
    }

    .sortable-header:active[b-rktx8slepb] {
        background-color: rgba(0, 0, 0, 0.15);
    }

    .sortable-header i[b-rktx8slepb] {
        font-size: 0.875rem;
        transition: transform 0.2s ease;
    }

    .sortable-header:hover i[b-rktx8slepb] {
        transform: scale(1.2);
    }
/* /Components/Pages/GestionNoConformidades.razor.rz.scp.css */
/* Estilos para los estados en el select */
.form-select option[b-t7l08c3b93] {
    padding: 0.5rem;
    font-weight: 500;
}

/* Estilos para el select de estado seg�n el valor seleccionado */
.form-select[value="1"][b-t7l08c3b93] {
    color: #dc3545;
    font-weight: 600;
}

.form-select[value="2"][b-t7l08c3b93] {
    color: #ffc107;
    font-weight: 600;
}

.form-select[value="3"][b-t7l08c3b93] {
    color: #0dcaf0;
    font-weight: 600;
}

.form-select[value="4"][b-t7l08c3b93] {
    color: #198754;
    font-weight: 600;
}

/* Colores de los badges de estado en la tabla */
.badge.bg-danger[b-t7l08c3b93] {
    background-color: #dc3545 !important;
}

.badge.bg-warning[b-t7l08c3b93] {
    background-color: #ffc107 !important;
    color: #000 !important;
}

.badge.bg-info[b-t7l08c3b93] {
    background-color: #0dcaf0 !important;
    color: #000 !important;
}

.badge.bg-success[b-t7l08c3b93] {
    background-color: #198754 !important;
}

/* Estilos para encabezados ordenables */
.sortable-header[b-t7l08c3b93] {
    cursor: pointer;
    user-select: none;
    transition: all 0.2s ease;
    padding: 0.75rem;
}

    .sortable-header:hover[b-t7l08c3b93] {
        background-color: rgba(0, 0, 0, 0.075);
    }

    .sortable-header:active[b-t7l08c3b93] {
        background-color: rgba(0, 0, 0, 0.15);
    }

    .sortable-header i[b-t7l08c3b93] {
        font-size: 0.875rem;
        transition: transform 0.2s ease;
    }

    .sortable-header:hover i[b-t7l08c3b93] {
        transform: scale(1.2);
    }

/* Estilos para botones deshabilitados de no conformidades cerradas */
.btn:disabled[b-t7l08c3b93] {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
}

.btn-outline-primary:disabled[b-t7l08c3b93],
.btn-outline-danger:disabled[b-t7l08c3b93] {
    border-color: #dee2e6;
    color: #6c757d;
}

.btn-outline-primary:disabled:hover[b-t7l08c3b93],
.btn-outline-danger:disabled:hover[b-t7l08c3b93] {
    background-color: transparent;
    border-color: #dee2e6;
    color: #6c757d;
}
/* /Components/Pages/Login.razor.rz.scp.css */
.login-container[b-7k7jgjw61d] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    padding: 20px;
    overflow-y: auto;
}

.login-card[b-7k7jgjw61d] {
    background: white;
    border-radius: 10px;
    padding: 40px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
    width: 100%;
    max-width: 400px;
}

.logo-container[b-7k7jgjw61d] {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 2rem;
}

.logo[b-7k7jgjw61d] {
    max-width: 300px;
    height: auto;
    object-fit: contain;
}

.login-card h2[b-7k7jgjw61d] {
    color: #495057;
    font-weight: 600;
    margin-bottom: 2rem;
    font-size: 1.5rem;
}

.login-card .text-muted[b-7k7jgjw61d] {
    color: #6c757d;
    font-size: 1rem;
}

.login-card .form-label[b-7k7jgjw61d] {
    font-weight: 500;
    color: #495057;
    margin-bottom: 8px;
}

.login-card .form-control-lg[b-7k7jgjw61d] {
    padding: 12px 16px;
    font-size: 1rem;
}

.login-card .btn-primary[b-7k7jgjw61d] {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    border: none;
    padding: 12px;
    font-weight: 500;
    transition: transform 0.2s;
}

.login-card .btn-primary:hover[b-7k7jgjw61d] {
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(220, 53, 69, 0.4);
}

.login-card .btn-primary:disabled[b-7k7jgjw61d] {
    opacity: 0.7;
    transform: none;
}

.login-card .alert[b-7k7jgjw61d] {
    margin-top: 20px;
    border-radius: 8px;
}

.login-card .btn-success[b-7k7jgjw61d] {
    background: linear-gradient(135deg, #28a745 0%, #218838 100%);
    border: none;
    padding: 12px;
    font-weight: 500;
    transition: transform 0.2s;
    box-shadow: 0 4px 15px rgba(40, 167, 69, 0.3);
}

.login-card .btn-success:hover[b-7k7jgjw61d] {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(40, 167, 69, 0.5);
}

.login-card .btn-success:disabled[b-7k7jgjw61d] {
    opacity: 0.7;
    transform: none;
}

.login-card .btn-success .bi-fingerprint[b-7k7jgjw61d] {
    font-size: 1.3rem;
}

.login-card .btn-outline-primary[b-7k7jgjw61d] {
    border-color: #dc3545;
    color: #dc3545;
    padding: 10px;
    font-weight: 500;
    transition: all 0.2s;
}

.login-card .btn-outline-primary:hover[b-7k7jgjw61d] {
    background-color: #dc3545;
    border-color: #dc3545;
    color: white;
    transform: translateY(-2px);
}

.login-card .btn-link[b-7k7jgjw61d] {
    color: #6c757d;
    text-decoration: none;
    padding: 8px;
}

.login-card .btn-link:hover[b-7k7jgjw61d] {
    color: #dc3545;
    text-decoration: underline;
}








/* /Components/Pages/MisDispositivos.razor.rz.scp.css */
.card[b-70bqm78b5v] {
    border: none;
    transition: box-shadow 0.3s ease;
}

.card:hover[b-70bqm78b5v] {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.list-group-item[b-70bqm78b5v] {
    border-left: none;
    border-right: none;
    transition: background-color 0.2s ease;
}

.list-group-item:hover[b-70bqm78b5v] {
    background-color: #f8f9fa;
}

.list-group-item:first-child[b-70bqm78b5v] {
    border-top: none;
}

.list-group-item:last-child[b-70bqm78b5v] {
    border-bottom: none;
}

.btn-outline-danger[b-70bqm78b5v] {
    transition: all 0.2s ease;
}

.btn-outline-danger:hover[b-70bqm78b5v] {
    transform: scale(1.05);
}

.alert[b-70bqm78b5v] {
    border-radius: 8px;
}

.badge[b-70bqm78b5v] {
    font-size: 0.75rem;
    padding: 0.35em 0.65em;
}
/* /Components/Pages/Nominas.razor.rz.scp.css */
.nominas-container[b-fbp0mfbm08] {
    padding: 20px;
    max-width: 1400px;
    margin: 0 auto;
}

.page-header[b-fbp0mfbm08] {
    margin-bottom: 30px;
}

.page-header h3[b-fbp0mfbm08] {
    color: #2c3e50;
    margin-bottom: 5px;
}

.page-header i[b-fbp0mfbm08] {
    margin-right: 10px;
    color: #3498db;
}

.import-section[b-fbp0mfbm08],
.query-section[b-fbp0mfbm08] {
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    border: none;
}

.card-header[b-fbp0mfbm08] {
    background-color: #f8f9fa;
    border-bottom: 2px solid #dee2e6;
}

.card-header h5[b-fbp0mfbm08] {
    margin: 0;
    color: #2c3e50;
    font-size: 1.1rem;
}

.card-header i[b-fbp0mfbm08] {
    margin-right: 8px;
    color: #3498db;
}

.info-box[b-fbp0mfbm08] {
    background-color: #e3f2fd;
    border-left: 4px solid #2196f3;
    padding: 15px;
    border-radius: 4px;
}

.info-box h6[b-fbp0mfbm08] {
    color: #1976d2;
    margin-bottom: 10px;
}

.info-box ul[b-fbp0mfbm08] {
    margin-bottom: 0;
    padding-left: 20px;
}

.table[b-fbp0mfbm08] {
    font-size: 0.9rem;
}

.table thead[b-fbp0mfbm08] {
    background-color: #f8f9fa;
    font-weight: 600;
}

.table tbody tr:hover[b-fbp0mfbm08] {
    background-color: #f1f3f5;
}

.btn-sm[b-fbp0mfbm08] {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
}

.modal.show[b-fbp0mfbm08] {
    display: block;
}

.modal-backdrop[b-fbp0mfbm08] {
    opacity: 0.5;
}

.alert[b-fbp0mfbm08] {
    border-radius: 4px;
}

.alert i[b-fbp0mfbm08] {
    margin-right: 8px;
}

/* Estilos para la tabla de detalle */
.modal-body table.table-sm td:first-child[b-fbp0mfbm08] {
    font-weight: 500;
    width: 60%;
}

.modal-body table.table-sm td:last-child[b-fbp0mfbm08] {
    width: 40%;
}

/* Responsive */
@media (max-width: 768px) {
    .nominas-container[b-fbp0mfbm08] {
        padding: 10px;
    }

    .table[b-fbp0mfbm08] {
        font-size: 0.8rem;
    }

    .modal-dialog[b-fbp0mfbm08] {
        margin: 0.5rem;
    }
}
/* /Components/Pages/Seguridad.razor.rz.scp.css */
.nav-tabs .nav-link[b-p3tuqamsjc] {
    color: #495057;
    border: 1px solid transparent;
    border-radius: 0.25rem 0.25rem 0 0;
}

.nav-tabs .nav-link:hover[b-p3tuqamsjc] {
    border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.active[b-p3tuqamsjc] {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff;
    font-weight: 600;
}

.card-header[b-p3tuqamsjc] {
    font-weight: 600;
}

.table th[b-p3tuqamsjc] {
    background-color: #f8f9fa;
    font-weight: 600;
    border-bottom: 2px solid #dee2e6;
}

.form-check-input:checked[b-p3tuqamsjc] {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.badge[b-p3tuqamsjc] {
    padding: 0.35em 0.65em;
    font-size: 0.75em;
}

.list-group-item[b-p3tuqamsjc] {
    border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:hover[b-p3tuqamsjc] {
    background-color: #f8f9fa;
}

.alert[b-p3tuqamsjc] {
    border-left: 4px solid;
}

.alert-success[b-p3tuqamsjc] {
    border-left-color: #198754;
}

.alert-danger[b-p3tuqamsjc] {
    border-left-color: #dc3545;
}

.alert-warning[b-p3tuqamsjc] {
    border-left-color: #ffc107;
}

.alert-info[b-p3tuqamsjc] {
    border-left-color: #0dcaf0;
}

.modal[b-p3tuqamsjc] {
    animation: fadeIn-b-p3tuqamsjc 0.3s;
}

@keyframes fadeIn-b-p3tuqamsjc {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.modal-dialog[b-p3tuqamsjc] {
    animation: slideDown-b-p3tuqamsjc 0.3s;
}

@keyframes slideDown-b-p3tuqamsjc {
    from {
        transform: translateY(-50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}
/* /Components/Pages/TemariosLibros.razor.rz.scp.css */
.card[b-462328t1i7] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-462328t1i7] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-462328t1i7] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-462328t1i7] { margin: 0 2px; }
.sortable[b-462328t1i7] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-462328t1i7] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-462328t1i7] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-462328t1i7] { display: block; }
/* /Components/Pages/TiposAgrupacion.razor.rz.scp.css */
.card[b-552751uiv0] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-552751uiv0] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-552751uiv0] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-552751uiv0] { margin: 0 2px; }
.sortable[b-552751uiv0] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-552751uiv0] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-552751uiv0] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-552751uiv0] { display: block; }
/* /Components/Pages/TiposEdificacion.razor.rz.scp.css */
.card[b-pbe16cmnf0] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-pbe16cmnf0] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-pbe16cmnf0] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-pbe16cmnf0] { margin: 0 2px; }
.sortable[b-pbe16cmnf0] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-pbe16cmnf0] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-pbe16cmnf0] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-pbe16cmnf0] { display: block; }
/* /Components/Pages/TiposLibros.razor.rz.scp.css */
.card[b-glinu6xjho] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-glinu6xjho] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-glinu6xjho] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-glinu6xjho] { margin: 0 2px; }
.sortable[b-glinu6xjho] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-glinu6xjho] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-glinu6xjho] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-glinu6xjho] { display: block; }
/* /Components/Pages/TiposOfertas.razor.rz.scp.css */
.card[b-gtr9526wxg] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.card:hover[b-gtr9526wxg] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important;
}

.table-hover tbody tr:hover[b-gtr9526wxg] {
    background-color: rgba(220, 53, 69, 0.05);
}

.btn-group .btn[b-gtr9526wxg] {
    margin: 0 2px;
}

.badge[b-gtr9526wxg] {
    font-weight: 500;
    padding: 0.4em 0.8em;
}

.form-label[b-gtr9526wxg] {
    color: #495057;
    font-size: 0.95rem;
}

.card-header[b-gtr9526wxg] {
    border-bottom: 3px solid rgba(255, 255, 255, 0.2);
}

.bi[b-gtr9526wxg] {
    font-size: 1.1em;
}

.alert-dismissible .btn-close[b-gtr9526wxg] {
    padding: 0.75rem;
}

.sortable[b-gtr9526wxg] {
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
}

.sortable:hover[b-gtr9526wxg] {
    background-color: rgba(220, 53, 69, 0.1);
}

.sortable i[b-gtr9526wxg] {
    font-size: 0.9em;
    margin-left: 0.25rem;
}

.modal.show[b-gtr9526wxg] {
    display: block;
}
/* /Components/Pages/TiposRevistas.razor.rz.scp.css */
.card[b-sinqua5pdd] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-sinqua5pdd] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-sinqua5pdd] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-sinqua5pdd] { margin: 0 2px; }
.sortable[b-sinqua5pdd] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-sinqua5pdd] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-sinqua5pdd] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-sinqua5pdd] { display: block; }
/* /Components/Pages/TiposServicios.razor.rz.scp.css */
.card[b-bej6gbzmv7] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-bej6gbzmv7] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-bej6gbzmv7] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-bej6gbzmv7] { margin: 0 2px; }
.sortable[b-bej6gbzmv7] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-bej6gbzmv7] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-bej6gbzmv7] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-bej6gbzmv7] { display: block; }
/* /Components/Pages/TiposTrabajos.razor.rz.scp.css */
.card[b-ogv5ybjxl9] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-ogv5ybjxl9] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-ogv5ybjxl9] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-ogv5ybjxl9] { margin: 0 2px; }
.sortable[b-ogv5ybjxl9] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-ogv5ybjxl9] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-ogv5ybjxl9] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-ogv5ybjxl9] { display: block; }
/* /Components/Pages/UbicacionesRevistas.razor.rz.scp.css */
.card[b-oz39zdoq2b] { transition: transform 0.2s, box-shadow 0.2s; }
.card:hover[b-oz39zdoq2b] { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(220, 53, 69, 0.15) !important; }
.table-hover tbody tr:hover[b-oz39zdoq2b] { background-color: rgba(220, 53, 69, 0.05); }
.btn-group .btn[b-oz39zdoq2b] { margin: 0 2px; }
.sortable[b-oz39zdoq2b] { cursor: pointer; user-select: none; transition: background-color 0.2s; }
.sortable:hover[b-oz39zdoq2b] { background-color: rgba(220, 53, 69, 0.1); }
.sortable i[b-oz39zdoq2b] { font-size: 0.9em; margin-left: 0.25rem; }
.modal.show[b-oz39zdoq2b] { display: block; }
/* /Components/Shared/AutocompleteInput.razor.rz.scp.css */
.autocomplete-container[b-5lk6ep1qae] {
    position: relative;
    width: 100%;
}

.autocomplete-suggestions[b-5lk6ep1qae] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: white;
    border: 1px solid #ced4da;
    border-top: none;
    border-radius: 0 0 0.25rem 0.25rem;
    max-height: 250px;
    overflow-y: auto;
    z-index: 1000;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.autocomplete-item[b-5lk6ep1qae] {
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    transition: background-color 0.15s ease;
    border-bottom: 1px solid #f0f0f0;
}

    .autocomplete-item:last-child[b-5lk6ep1qae] {
        border-bottom: none;
    }

    .autocomplete-item:hover[b-5lk6ep1qae] {
        background-color: #f8f9fa;
    }

    .autocomplete-item:active[b-5lk6ep1qae] {
        background-color: #e9ecef;
    }

.autocomplete-item-highlight[b-5lk6ep1qae] {
    font-weight: 600;
    color: #dc3545;
}

.autocomplete-item-secondary[b-5lk6ep1qae] {
    font-size: 0.875rem;
    color: #6c757d;
    margin-left: 0.5rem;
}
/* /Components/Shared/MensajeAutoDismiss.razor.rz.scp.css */
.alert[b-r3r7pu5srh] {
    animation: slideInDown-b-r3r7pu5srh 0.3s ease-out;
}

.alert.fade.show[b-r3r7pu5srh] {
    animation: slideInDown-b-r3r7pu5srh 0.3s ease-out;
}

.alert-dismissible .btn-close[b-r3r7pu5srh] {
    transition: opacity 0.2s;
}

.alert-dismissible .btn-close:hover[b-r3r7pu5srh] {
    opacity: 1;
}

@keyframes slideInDown-b-r3r7pu5srh {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Animaci�n de salida */
.alert.fade:not(.show)[b-r3r7pu5srh] {
    animation: slideOutUp-b-r3r7pu5srh 0.3s ease-in;
}

@keyframes slideOutUp-b-r3r7pu5srh {
    from {
        opacity: 1;
        transform: translateY(0);
    }
    to {
        opacity: 0;
        transform: translateY(-20px);
    }
}
/* /Components/Shared/ResponsableSelector.razor.rz.scp.css */
.responsable-selector[b-mu51azqkgg] {
    position: relative;
    width: 100%;
}

.responsable-dropdown[b-mu51azqkgg] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: white;
    border: 1px solid #ced4da;
    border-top: none;
    border-radius: 0 0 0.375rem 0.375rem;
    max-height: 400px;
    overflow-y: auto;
    z-index: 1050;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    margin-top: -1px;
}

.dropdown-section[b-mu51azqkgg] {
    padding: 0.25rem 0;
}

.dropdown-header[b-mu51azqkgg] {
    padding: 0.5rem 1rem;
    font-weight: 600;
    font-size: 0.875rem;
    color: #495057;
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.dropdown-subheader[b-mu51azqkgg] {
    padding: 0.375rem 1rem;
    font-weight: 600;
    font-size: 0.8125rem;
    color: #6c757d;
    background-color: #f8f9fa;
    margin-top: 0.25rem;
}

.dropdown-item[b-mu51azqkgg] {
    padding: 0.5rem 1rem;
    cursor: pointer;
    transition: all 0.15s ease;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #f0f0f0;
}

    .dropdown-item:last-child[b-mu51azqkgg] {
        border-bottom: none;
    }

    .dropdown-item:hover:not(.disabled)[b-mu51azqkgg] {
        background-color: #f8f9fa;
        padding-left: 1.25rem;
    }

    .dropdown-item:active:not(.disabled)[b-mu51azqkgg] {
        background-color: #e9ecef;
    }

    .dropdown-item.disabled[b-mu51azqkgg] {
        cursor: default;
        opacity: 0.6;
    }

    .dropdown-item strong[b-mu51azqkgg] {
        font-weight: 500;
    }

    .dropdown-item .text-muted[b-mu51azqkgg] {
        font-size: 0.875rem;
    }

    .dropdown-item i[b-mu51azqkgg] {
        font-size: 1rem;
    }

.dropdown-divider[b-mu51azqkgg] {
    height: 0;
    margin: 0.25rem 0;
    overflow: hidden;
    border-top: 1px solid #dee2e6;
}

/* Estilos para los iconos */
.bi-building[b-mu51azqkgg] {
    color: #0d6efd !important;
}

.bi-person[b-mu51azqkgg] {
    color: #198754 !important;
}

.bi-info-circle[b-mu51azqkgg] {
    color: #6c757d !important;
}

/* Scrollbar personalizado */
.responsable-dropdown[b-mu51azqkgg]::-webkit-scrollbar {
    width: 8px;
}

.responsable-dropdown[b-mu51azqkgg]::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.responsable-dropdown[b-mu51azqkgg]::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 4px;
}

.responsable-dropdown[b-mu51azqkgg]::-webkit-scrollbar-thumb:hover {
    background: #555;
}

/* Animaci�n de entrada */
@keyframes slideDown-b-mu51azqkgg {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.responsable-dropdown[b-mu51azqkgg] {
    animation: slideDown-b-mu51azqkgg 0.2s ease;
}
